home *** CD-ROM | disk | FTP | other *** search
/ Scene 96 / Scene 96 International Edition (Zyklop Software) (Disc 2) (1997).iso / misc / coding / vgacodng / part03_a.pas < prev    next >
Pascal/Delphi Source File  |  1996-11-22  |  1KB  |  42 lines

  1. program Scrolly1;
  2.  
  3. uses crt;
  4.  
  5. const Text : string = 'Hallo, dies ist ein Test Sc'+
  6.                       'rolly, der sich solange wie'+
  7.                       'derholt, bis ein Taste gedr'+
  8.                       'ückt wird..................';
  9.  
  10. var Charno : byte;
  11.  
  12. procedure WaitRetrace;assembler;
  13. asm
  14.   mov     dx,3DAh
  15. @l1:
  16.   in      al,dx
  17.   and     al,08h
  18.   jz      @l1
  19. @l2:
  20.   in      al,dx
  21.   and     al,08h
  22.   jz      @l2
  23. end;
  24.  
  25.  
  26. begin
  27.   Charno := 1;   { Erstes Zeichen des Scrolltextes }
  28.   clrscr;                     { Bildschirm löschen }
  29.   gotoxy(80,13); { Zum letzten Zeichen in Zeile 13 }
  30.   repeat
  31.     WaitRetrace;
  32.     write(Text[Charno]);       { Zeichen schreiben }
  33.     move(mem[$B800:1922],mem[$B800:1920],158);
  34.     { 79 Zeichen um 1 Zeichen nach links schieben }
  35.     inc(Charno);                { Nächstes Zeichen }
  36.     if Charno > length(Text) then Charno := 1;
  37.     { Wenn Zeichenkette am Ende, von vorne beginnen }
  38.     gotoxy(80,13);      { Wieder zum Ausgangspunkt }
  39.   until keypressed;
  40.   readkey;
  41. end.
  42.